Alloc + no_std: part 1#641
Conversation
bal-e
left a comment
There was a problem hiding this comment.
Hi @soywod! I happen to know your work on Himalaya :)
Thanks for making a PR, we're totally on board with the direction here. And thanks for breaking it down into digestible chunks. We're happy to support this use case, and we hope that Domain can serve your needs! FYI we're slowly overhauling the API with domain::new, if it already has all the functionality you need then I would suggest trying it out over the new API.
FYI, we're releasing a new major version of Domain shortly (to 0.12), and this PR will likely be merged afterwards. We're happy to make a patch release afterwards if you'd like this PR (and perhaps follow-up ones) in a crates.io release; just let us know.
These are great news, happy to hear that the direction is fine. I plan to use Domain for PIM service discovery, I recently dived into and found that it plays nicely with Pimalaya I/O-free lib pattern.
I just tried it, it fits even better. I will go for it! Is it OK for me to prioritize the
Sure, a patch would be wonderful. With the new API, I somehow cannot make DNS query over TCP. I suspect a misusage from my side, but I don't know enough DNS domain to understand why. I just followed the example given in new base inline doc. In the regular API, domain/src/base/message_builder.rs Lines 1897 to 1914 in 6c3f041 Any idea? |
Good to hear! Yes, feel free to prioritize
Great, we'll make a release soon.
Ah yes! When sending DNS messages over TCP, each message must be preceded by its length (big-endian |
bal-e
left a comment
There was a problem hiding this comment.
LGTM :) Thanks for contributing!
Thanks for your help, I made it work using the following key steps:
|
The
no_stdandallocfeatures lack of consistency. A user should be able toStreamTarget::new_vec()withoutstdbutallocfeatures, which is not the case at the moment. I would like to help, but there is a lot to change. I propose to go by step. Here a first PR that:impl core::errorinstead ofstd::error, and remove thestdfeature gateextern crate std;by a propercfg_attronno_stddeclare_error_trait!Refs: #572, NLnetLabs/octseq#68